const Utils = require("./Utils.js")

let count = 0

// 第二版
let flag = true
while (flag) {
	log("运行中 ... " + Utils.getNowFormatDate())
	sleep(1000 * 60)
	let res = http.get("http://121.199.61.140:3004/clockin/getClockinAllow")
	let data = res.body.json()
	if (data.data.allow === "1") {
		// 唤醒屏幕及启动应用等一系列操作
		device.wakeUp()
		sleep(1000 * 3)
		launch("com.tencent.wework")
		toastLog("启动成功")
		sleep(1000 * 6)
		doClockin()
		home()
		sleep(1000 * 3)
		lockScreen()
		// 更新打卡状态
		let updateRes = http.post(
			"http://121.199.61.140:3004/clockin/updateClockinAllow",
			{
				allow: "0",
				allowEmailNotice: "1",
			}
		)
		let up = updateRes.body.json()
		if (up.code === 200) {
			log(up.msg)
		}
	}
	count++
	if (count % 60 === 0) {
		device.wakeUp()
		sleep(1000 * 6)
		launch("org.autojs.autoxjs.v6")
		sleep(1000 * 6)
		lockScreen()
		log("已运行 " + count + " 分钟")
	}
}

// 拖动打卡
function doClockin() {
	device.wakeUp()
	sleep(3000)
	launch("com.tencent.wework")
	toastLog("启动成功")
	let cardFlag = true
	let clockInCount = 0
	while (cardFlag) {
		Utils.waitTime(3)
		// 更新下班卡打卡按钮 和 打开更新下班卡界面 都要点击
		if (
			Utils.clickText("更新下班卡") ||
			Utils.clickText("更新")
		) {
			toastLog("找到了更新下班卡")
			Utils.waitTime(3)
			// 早退打卡后，再次打早退卡，需要确认
			if (Utils.getTextController("确认打卡"))
				Utils.clickText("确认打卡")
			clockInCount++
			// 第二次运行到此部分逻辑才结束
			if (clockInCount == 2) {
				// 返回软件主界面
				for (let i = 0;i < 2;i++) {
					Utils.waitTime(3)
					back()
				}
				Utils.waitTime(3)
				if (!Utils.getTextController("相正")) {
					Utils.clickText("消息")
				}
				cardFlag = false
				toastLog("结束")
				home()
				// flag = false
			}
		} else if (
			!Utils.getTextController("相正") &&
			Utils.clickText("打卡")
		) {
			// 点击工作台界面的打卡
			toastLog("找到了工作台界面的打卡")
		} else {
			if (Utils.clickText("工作台")) {
				toastLog("找到了工作台")
			}
		}
	}
}

// 第一版
// let flag = true
// let allowRunApp = false
// let count = 0
// let num = 0
// // 25 + (1~10之间的随机整数)
// let minutesAM = 25 + Math.ceil(Math.random() * 10)
// let minutesPM = 30
// log(`上班时间：8点${minutesAM}分，下班时间：18点${minutesPM}分`)
// while (flag) {
// 	sleep(1000 * 60) // 每分钟检查一次
// 	const today = new Date()
// 	weekNum = today.getDay()
// 	// 工作日执行打卡
// 	if (weekNum !== 0 && weekNum !== 6) {
// 		// log(`当前时间：${Utils.getNowFormatDate()}`)
// 		// 上班打卡
// 		if (
// 			Utils.compareTime(8, minutesAM) &&
// 			!Utils.compareTime(8, minutesAM + 5)
// 		) {
// 			count++
// 			if (count === 1) {
// 				allowRunApp = true
// 			}
// 		}
// 		// 下班打卡
// 		if (
// 			Utils.compareTime(18, minutesPM) &&
// 			!Utils.compareTime(18, minutesPM + 5)
// 		) {
// 			count++
// 			if (count === 1) {
// 				allowRunApp = true
// 				minutesAM = 25 + Math.ceil(Math.random() * 10)
// 				minutesPM = minutesAM > 30 ? minutesAM - 30 : 0
// 				log(`上班时间：8点${minutesAM}分，下班时间：18点${minutesPM}分`)
// 			}
// 		}
// 		if (allowRunApp) {
// 			device.wakeUp()
// 			Utils.waitTime(3)
// 			launch("com.tencent.wework")
// 			toastLog("启动成功")
// 			Utils.waitTime(6)
// 			home()
// 			// flag = false
// 			allowRunApp = false
// 		}
// 	} else {
// 		toastLog(`当前时间：${Utils.getNowFormatDate()}，非工作日，不执行打卡`)
// 		Utils.waitTime(3600 * 8)
// 	}
// 	num++
// 	if (num % 60 === 0) {
// 		device.wakeUp()
// 		sleep(1000 * 10)
// 		lockScreen()
// 		log("已运行 " + num + " 分钟")
// 	}
// }
